
[dbo].[BAEUpdateEventPOPurchase]
create procedure [dbo].[BAEUpdateEventPOPurchase] @OrderNum integer,
@PONum varchar(40) as
SET NOCOUNT ON
DECLARE @BatchNum varchar(10)
DECLARE @TransNum integer
DECLARE @InvRefNum integer
DECLARE @TransAmount money
DECLARE @OwnerOrg varchar(5)
DECLARE @OwnerARAcct varchar(50)
DECLARE @BatchCashAcct varchar(50)
DECLARE @btId varchar(10)
DECLARE @stId varchar(10)
DECLARE @title varchar(60)
SELECT @title = TITLE FROM Meet_Master WHERE MEETING = (SELECT MEETING FROM Order_Meet WHERE ORDER_NUMBER = @OrderNum);
SELECT @InvRefNum = INVOICE_REFERENCE_NUM,
@BatchNum = BATCH_NUM,
@btId = BT_ID,
@stId = ST_ID
FROM Orders
WHERE ORDER_NUMBER = @OrderNum
SELECT @OwnerOrg = t.OWNER_ORG_CODE,
@TransNum = t.TRANS_NUMBER
FROM Trans t
WHERE t.INVOICE_REFERENCE_NUM = @InvRefNum
and t.LINE_NUMBER = 1
and t.TRANSACTION_TYPE = 'DIST'
SELECT @TransAmount = t.AMOUNT
FROM Trans t
WHERE t.TRANS_NUMBER = @TransNum
and t.TRANSACTION_TYPE = 'PAY'
SELECT @OwnerARAcct = DefaultArAccount
FROM Org_Control
WHERE OrgCode = @OwnerOrg
UPDATE Trans
SET TRANSACTION_TYPE = 'AR',
CUSTOMER_REFERENCE = @PONum,
PSEUDO_ACCOUNT = OWNER_ORG_CODE + '-MEETING-AR',
GL_ACCT_ORG_CODE = OWNER_ORG_CODE,
GL_ACCOUNT = isnull(@OwnerARAcct,''),
INVOICE_CREDITS = 0,
PAYMENT_TYPE = '',
CHECK_NUMBER = '',
CC_NUMBER = '',
CC_EXPIRE = '',
CC_NAME = '',
CC_STATUS = '',
ENCRYPT_CC_NUMBER = '',
ENCRYPT_CC_EXPIRE = ''
WHERE TRANS_NUMBER = @TransNum and TRANSACTION_TYPE = 'PAY'
UPDATE Trans
SET CUSTOMER_REFERENCE = @PONum,
CHECK_NUMBER = '',
CC_NUMBER = '',
CC_EXPIRE = '',
CC_NAME = '',
CC_STATUS = '',
ENCRYPT_CC_NUMBER = '',
ENCRYPT_CC_EXPIRE = ''
WHERE TRANS_NUMBER = @TransNum and TRANSACTION_TYPE = 'DIST'
UPDATE Orders
SET TOTAL_PAYMENTS = 0,
BALANCE = isnull(@TransAmount,0),
OTHER_PAY = 0,
RECOGNIZED_CASH_AMOUNT = 0,
CUSTOMER_REFERENCE = @PONum,
PAY_TYPE = '',
PAY_NUMBER = '',
CREDIT_CARD_EXPIRES = '',
CREDIT_CARD_NAME = '',
CASH_GL_ACCT = '',
ENCRYPT_PAY_NUMBER = '',
ENCRYPT_CREDIT_CARD_EXPIRES = ''
WHERE ORDER_NUMBER = @OrderNum
UPDATE Batch
SET TRANS_CASH = TRANS_CASH - isnull(@TransAmount,0),
CONTROL_CASH = CONTROL_CASH - isnull(@TransAmount,0),
TRANS_COUNT = case when TRANS_COUNT > 0 then TRANS_COUNT - 1 else TRANS_COUNT end,
CONTROL_COUNT = case when CONTROL_COUNT > 0 then CONTROL_COUNT - 1 else CONTROL_COUNT end
WHERE BATCH_NUM = @BatchNum
SET NOCOUNT OFF
GO